perm filename DERIV.IL[TIM,LSP]1 blob sn#679563 filedate 1982-09-23 generic text, type C, neo UTF8
COMMENT āŠ—   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	(DECLARE (LOCALVARS . T))
C00005 ENDMK
CāŠ—;
(DECLARE (LOCALVARS . T))


(DEFINEQ (DER1 (LAMBDA (A) (LIST (QUOTE QUOTIENT) (DERIV A) A))))

(DEFINEQ
  (DERIV
   (LAMBDA (A) 
     (COND ((ATOM A) (COND ((EQ A (QUOTE X)) 1) (T 0)))
	   ((EQ (CAR A) (QUOTE PLUS))
	    (CONS (QUOTE PLUS) (MAPCAR (CDR A) (QUOTE DERIV))))
	   ((EQ (CAR A) (QUOTE DIFFERENCE))
	    (CONS (QUOTE DIFFERENCE) (MAPCAR (CDR A) (QUOTE DERIV))))
	   ((EQ (CAR A) (QUOTE TIMES))
	    (LIST (QUOTE TIMES)
		  A
		  (CONS (QUOTE PLUS) (MAPCAR (CDR A) (QUOTE DER1)))))
	   ((EQ (CAR A) (QUOTE QUOTIENT))
	    (LIST (QUOTE DIFFERENCE)
		  (LIST (QUOTE QUOTIENT) (DERIV (CADR A)) (CADDR A))
		  (LIST (QUOTE QUOTIENT)
			(CADR A)
			(LIST (QUOTE TIMES)
			      (CADDR A)
			      (CADDR A)
			      (DERIV (CADDR A))))))
	   (T (QUOTE ERROR))))))

(DEFINEQ
  (RUN
   (LAMBDA NIL 
     ((LAMBDA (G0023) 
	(PROG (I) 
	      (SETQ I G0023)
	 LOOP (COND ((IEQP I 1000) (RETURN NIL)))
	      (DERIV (QUOTE (PLUS (TIMES 3 X X)
				  (TIMES A X X)
				  (TIMES B X)
				  5)))
	      (DERIV (QUOTE (PLUS (TIMES 3 X X)
				  (TIMES A X X)
				  (TIMES B X)
				  5)))
	      (DERIV (QUOTE (PLUS (TIMES 3 X X)
				  (TIMES A X X)
				  (TIMES B X)
				  5)))
	      (DERIV (QUOTE (PLUS (TIMES 3 X X)
				  (TIMES A X X)
				  (TIMES B X)
				  5)))
	      (DERIV (QUOTE (PLUS (TIMES 3 X X)
				  (TIMES A X X)
				  (TIMES B X)
				  5)))
	      ((LAMBDA (G0023) (SETQ I G0023) (GO LOOP)) (ADD1 I))))
      0))))

(TIMER TIMIT 
	(RUN))